| API Documentation |  |

- MAIN PAGE
- NAMESPACES
- CLASSES

Public Member Functions | List of all members
nkExport::Exportable Class Referenceabstract

An interface to define objects that can be exported using this component. More...

Inheritance diagram for nkExport::Exportable:

## Public Member Functions
| Exportable () noexcept
virtual | ~Exportable ()
virtual void | exportClassToTree (Node *rootNode)=0
virtual void | importClassFromTree (Node *rootNode)=0

## Detailed Description

An interface to define objects that can be exported using this component.

If need be, clients should inherit from this class and override the functions to import and export their object. This way, it will be possible to feed them to the Exporters.

## Constructor & Destructor Documentation

## ◆ Exportable()

nkExport::Exportable::Exportable | ( |  | ) |
| noexcept

Constructor.

## ◆ ~Exportable()

virtual nkExport::Exportable::~Exportable | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ exportClassToTree()

virtual void nkExport::Exportable::exportClassToTree | ( | Node * | rootNode | ) |
| pure virtual

Exports an item into a tree describing its structure and its data.

Parameters

  rootNode | The node into which the object has to write its related information.

Implemented in nkAstraeus::PbsMaterial, nkWinUi::Component, nkGraphics::Texture, nkGraphics::Shader, nkGraphics::Camera, nkGraphics::Program, nkGraphics::Node, nkGraphics::ShaderPassMemorySlot, nkGraphics::TargetOperations, nkWinUi::GridLayout, nkGraphics::Mesh, nkGraphics::Sampler, nkGraphics::Buffer, nkGraphics::RenderQueue, nkGraphics::RasterState, nkGraphics::EntityRenderLodSlot, nkWinUi::ContextMenu, nkGraphics::EntityRenderInfo, nkGraphics::InstancingPass, nkGraphics::ShaderInstanceMemorySlot, nkGraphics::ClearTargetsPass, nkGraphics::Compositor, nkGraphics::CompositorNode, nkGraphics::RenderScenePass, nkGraphics::EntityRenderInfoSlot, nkGraphics::StreamOutputDescriptor, nkGraphics::RaytracingPass, nkScripts::Script, nkGraphics::Entity, nkAstraeus::Material, nkGraphics::PostProcessPass, nkGraphics::Pass, nkWinUi::Layout, nkGraphics::ComputePass, nkGraphics::ConstantBuffer, nkGraphics::Configuration, nkGraphics::ShaderMemorySlot, nkGraphics::MonoMaterialPass, nkGraphics::DepthStencilState, and nkGraphics::BlendState.

## ◆ importClassFromTree()

virtual void nkExport::Exportable::importClassFromTree | ( | Node * | rootNode | ) |
| pure virtual

Imports information from a tree which is supposed to describe its structure and data.

Parameters

  rootNode | The root node of the tree holding the information.

Implemented in nkAstraeus::PbsMaterial, nkWinUi::Component, nkGraphics::Texture, nkGraphics::Shader, nkGraphics::Camera, nkGraphics::Program, nkWinUi::TreeView, nkGraphics::Node, nkGraphics::TargetOperations, nkGraphics::ShaderPassMemorySlot, nkWinUi::GridLayout, nkGraphics::Mesh, nkGraphics::Sampler, nkGraphics::Buffer, nkWinUi::ListBox, nkWinUi::TabWindow, nkGraphics::RenderQueue, nkWinUi::ComboBox, nkGraphics::RasterState, nkGraphics::EntityRenderLodSlot, nkWinUi::ContextMenu, nkGraphics::ShaderInstanceMemorySlot, nkGraphics::ClearTargetsPass, nkGraphics::EntityRenderInfo, nkGraphics::Compositor, nkGraphics::CompositorNode, nkGraphics::InstancingPass, nkWinUi::Slider, nkGraphics::RenderScenePass, nkGraphics::StreamOutputDescriptor, nkGraphics::RaytracingPass, nkWinUi::FileExplorer, nkGraphics::EntityRenderInfoSlot, nkWinUi::Window, nkScripts::Script, nkGraphics::Entity, nkWinUi::Layout, nkWinUi::Static, nkAstraeus::Material, nkGraphics::PostProcessPass, nkGraphics::Pass, nkWinUi::ImageDisplay, nkGraphics::ComputePass, nkWinUi::EditBox, nkGraphics::ConstantBuffer, nkWinUi::LogWin, nkGraphics::Configuration, nkGraphics::MonoMaterialPass, nkGraphics::DepthStencilState, and nkGraphics::BlendState.

The documentation for this class was generated from the following file:

- Documentation/Headers/NilkinsExport/Exportable/Exportable.h